package com.punch.common.vo.user.user;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;

/**
 * @author tanchangguo
 * @email 17607195327@163.com
 * @date 2020-07-21 19:10:02
 */
@Data
@ApiModel(value = "返回类")
public class UserVO implements Serializable {

    @ApiModelProperty(name = "userId", notes = "用户id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long userId;

    @ApiModelProperty(value = "用户名")
    private String username;


    @ApiModelProperty(value = "头像")
    private String headImgUrl;

    @ApiModelProperty(value = "手机号")
    private String mobile;

    @ApiModelProperty(value = "性别 0：女  1：男")
    private Integer sex;


    @ApiModelProperty(value = "0：禁用  1启用")
    private Integer enabled;

    @ApiModelProperty(value = "审核状态")
    private Integer auditStatus;


    @ApiModelProperty(value = "区域id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Integer areaId;

    @ApiModelProperty(value = "区域名称")
    private String areaName;

    @ApiModelProperty(value = "角色")
    private Integer roleId;

    @ApiModelProperty(value = "角色名称")
    private String roleName;


    private String address;

    private String remarks;

    /**
     * 用户结算信息
     */
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private UserExtendVO userExtendVO;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    private OrgCertificationVO orgCertificationVO;
}
